Process Analysis Toolkit  (PAT) 3.5 Help  
3.4.1.2 Assertions

PRTS supports all assertions in CSP, PCSP and RTS modules. The most useful assertions include deadlock checking, reachability checking, LTL checking and refinement checking(both probabilistic refinement and timed refinement). Meanwhile, we are developing more complicated properties which are unique for PRTS.

Deadlock-freeness (with probability)

Given P() as a process, the following assertion asks if P() is deadlock-free or not(P() is deadlock-free with max/min/both probability).

#assert P() deadlockfree (with pmin/ pmax/ prob);

Reachability (with probability)

Given P() as a process, the following assertion asks if P() can reach a state at which some given condition is satisfied(P() can reach a state with max/min/both probability).

#assert P() reaches cond (with pmin/ pmax/ prob);

Linear Temporal Logic (LTL) (with probability)

In PAT, we support the full set of LTL syntax. Given a process P(), the following assertion asks whether P() satisfies the LTL formula(P() can satisfy an LTL formula with max/min/both probability).

#assert P() |= F (with pmin/ pmax/ prob);

where F is an LTL formula.

Refinement Checking (with probability)

PAT now also supports refinement checking in PRTS. User could define a non-probabilistic property using CSP# as a specificaiton. Then PAT could tell users if the system behaves under the constraint of the specification(the system behaves under the constraint of the specification with max/min/both probability).

          #assert Implementation() refines Spec() (with prob/ pmin/ pmax);

where Spec() is the user-defined specification.

Timed Refinement Checking

Similiarly to RTS module, PRTS also supports timed refinement checking. This property allows user to define the specification which has real-time features and check if the implementation could work under the constraint of timed specification:

#assert Implementation() refines<T> TimedSpec() ;

where TimedSpec() is the user-defined timed specification.

Timed Refinement Checking with probability(In Progress)

We are working to specify some unique properties in PRTS which could not be handled by other modules. Timed probabilistic refinement checking allows users to check the max/min/both probability with which implementation could work under the constraint of timed specification.

          #assert Implementation() refines<T> TimedSpec() with prob/ pmin/ pmax;

where Spec() is the user-defined specification.

These properties a just a part of that PRTS could support; and we are exploring more systems to find more and more suitable properties that could be verified in PRTS module.

 

 


 
Copyright © 2007-2012 Semantic Engineering Pte. Ltd.